The present invention relates to a method and apparatus for displaying a hair style, and more particularly to a method of modeling human head hairs and animal hairs and a computer graphics technique for realistically displaying images of hairs on a display.
In a hair modeling method, such as described in JP-A-2-93775, the shape of hairs is expressed by using a number of polygons, and the detailed textures and attributes of hairs are mapped on the polygons by considering anisotropic reflections of hairs, to thereby obtain an image of hairs.
In another example as described in JP-A-2-127774 and JP-A-2-170288, each hair is modeled, for example, and expressed by a triangular prism instead of a shape of a hair element, then by adjusting positions and directions of the triangular prisms, so an image of hairs can be obtained.
As to a technique of expressing a motion of human hairs through computer animation, it has given by "Movement of Hair by Stochastic Model", The Institute of Electronics, Information and Communication Engineers of Japan, Study Report Vol.89, IE89-60. According to this method, using an experimental rule obtained by actually measuring how a curve changes under a uniform wind force, a motion of all hairs is reproduced under the uniform wind force.
With the above-described examples, it is necessary for a user to finely determine parameters defining the shape of hairs or hair style, imposing a difficult work of trial and error, upon ordinary users.
A motion of hairs in an external force can be calculated in principle by solving a mechanics equation applied to each hair which is assumed to be an elastic body. In this case, such a mechanics equation is the following Euler-Lagrange equation: EQU .differential.(.rho..differential.r/.differential.t)/.differential.t+r.diff erential.r/.differential.t+.delta.E(r).delta./r=f(r, t) (1)
where r=r(a, t) is a function of a one-dimensional parameter a and time parameter t, and represents a curve. The .rho.=.rho.(a) and r=r(a) of the equation (1) at the left side represent the density of curves and an attenuation coefficient at point a. E(r) represents a potential energy, and .delta.E(r)/.delta.r represents its first variation. f=f(r, t) at the right side represents an external force term. The equation (1) is used for a single curve. In order to deal with n hairs, the equations for r=r.sub.1, r.sub.2, . . . , rn are required to be simultaneously solved. In such a case, the external force term f at the right side takes a value dependent upon r.sub.1, r.sub.2, . . . , r.sub.n because of interaction between hairs. Since the value n usually takes several tens to hundreds thousands, it is almost impossible to simultaneously solve such a great number of equations when considering the processing capability of a general graphics workstation. From this reason, the above-described technique provides a representation of a simplified motion under a considerably limited condition.
The above-described technique, however, is not easy to enter parameters necessary for a desired motion, and cannot provide a representation of various types of motions. Furthermore, the above-described technique uses a simplified model, and so only a steady state of motion under a uniform wind force is obtained. On the other hand, solving precisely so many mechanics equations is not practical as described above.